// Programming_Scala/src/ch12/func-script.scala
// WON'T COMPILE

class CSuper {
  def msuper = println( "CSuper" )
}
class C extends CSuper {
  def m = println( "C" )
}
class CSub extends C {
  def msub = println( "CSub" )
}

var f1: C => C = ( c: C ) => new C
var f2: C => C = ( c: CSuper ) => new CSub
var f3: C => C = ( c: CSuper ) => new C
var f4: C => C = ( c: C ) => new CSub
var f5: C => C = ( c: C ) => new CSuper  // ERROR!

